package com.tengroup.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tengroup.entity.Question;

import java.util.List;

public interface QuestionService {
    // 增加题目
    boolean addQuestion(Question question);

    // 删除题目（软删除）
    boolean deleteQuestion(Long id);

    // 修改题目
    boolean updateQuestion(Question question);

    // 根据 ID 查询题目
    Question getQuestionById(Long id);

    // 查询所有未删除的题目
    List<Question> getAllQuestions();

    // 分页查询所有未删除的题目
    IPage<Question> getAllQuestions(int page, int size);

    // 根据题目类型查询题目列表
    List<Question> findByQuestionType(Integer questionType);

    // 根据科目 ID 查询题目列表
    List<Question> findBySubjectId(Integer subjectId);

    // 根据难度级别查询题目列表
    List<Question> findByDifficulty(Byte difficulty);

    // 根据关键字模糊查询题目列表
    List<Question> findByKeyword(String keyword);

    // 批量导入题目
    boolean importQuestions(List<Question> questions);
    // 查询所有已删除的题目
    List<Question> findAllDeletedQuestions();
    // 删除重复题目
    void removeDuplicateQuestions();

}